<?php

namespace app\common\service;

/**
 * 店铺状态管理服务类
 */
class ShoppingStatus
{
    /**
     * 店铺状态 0打烊中 1开业中
     */
    // -------------------------- 状态常量定义 --------------------------
    const CLOSING_HOURS     = 0;
    const OPENING_CEREMONY     = 1;

    // -------------------------- 状态映射配置 --------------------------
    /**
     * 状态值 => 状态文本 映射（核心映射）
     * @var array
     */
    protected static $reminderStatusMap = [
        self::CLOSING_HOURS     => '打烊中',
        self::OPENING_CEREMONY        => '开业中',
    ];

    // -------------------------- 公共静态方法 --------------------------

    /**
     * 获取店铺状态文本（核心方法）
     * @param int $status 状态值
     * @return string
     */
    public static function getShoppingText($status)
    {
        return self::$reminderStatusMap[$status] ?? '未知状态';
    }

    /**
     * 获取所有店铺状态选项（用于下拉框/表单）
     * @return array [状态值 => 状态文本]
     */
    public static function getShoppingOptions()
    {
        return self::$reminderStatusMap;
    }

    /**
     * 验证店铺状态是否有效
     * @param int $status 状态值
     * @return bool
     */
    public static function isShoppingValid($status)
    {
        return array_key_exists($status, self::$reminderStatusMap);
    }
}
